#include <iostream>

using namespace std;

class Box
{

public:
    Box(int val)
    {
        this->val = val;
        cout << "start Box constructor method val = " << this->val << endl;
    }

    Box()
    {
        cout << "start Box constructor method val = " << this->val << endl;
    }

    ~Box()
    {
        cout << "start Box destory method val = " << this->val << endl;
    }

private:
    int val;
};

int main()
{
    Box b1 = Box(1);

    Box *b2 = new Box(2);

    delete b2;

    Box* myBoxArray1 = new Box[4];
    delete[] myBoxArray1;

    /* Box myBoxArray[4] = {
        Box(3),
        Box(4),
        Box(5),
        Box(6),
    }; */
    return 0;
}
